تعرف على أهم الدوال المدمجة في لغة بايثون
تُعد لغة بايثون من أكثر لغات البرمجة استخدامًا وانتشارًا في العالم، لما تتميز به من بساطة وسهولة في التعلم، بالإضافة إلى قوتها في معالجة البيانات، وتطوير البرمجيات، وتحليل المعلومات، والذكاء الاصطناعي، وغيرها من المجالات المتقدمة. ومن أبرز العوامل التي جعلت من بايثون لغة قوية ومحبوبة بين المطورين هو احتواؤها على عدد كبير من الدوال المدمجة (Built-in Functions) التي توفر على المبرمج الوقت والجهد في كتابة أكواد معقدة، من خلال توفير أدوات جاهزة للاستخدام المباشر.
في هذا المقال، سيتم التطرق بالتفصيل إلى أهم هذه الدوال، مع شرح وظائفها، وأمثلة على استخدامها، وتصنيفها وفقًا لطبيعتها ووظيفتها. كما سيتم تقديم جدول مرجعي يلخص بعض هذه الدوال وأغراضها، بما يسهل على القارئ الرجوع إليها بسرعة عند الحاجة.
تعريف الدوال المدمجة في بايثون
الدوال المدمجة في بايثون هي مجموعة من الوظائف الجاهزة التي توفرها اللغة بشكل افتراضي دون الحاجة إلى استيراد أي مكتبة إضافية. يتم تحميلها تلقائيًا مع بدء تشغيل بيئة بايثون، ويمكن استدعاؤها في أي وقت أثناء تنفيذ الكود.
تغطي هذه الدوال مجالات واسعة مثل:
-
التعامل مع الأرقام والنصوص
-
العمليات المنطقية
-
التحقق من نوع البيانات
-
تحويل البيانات بين الأنواع المختلفة
-
معالجة القوائم والمجموعات
-
الإدخال والإخراج
-
وغيرها
تصنيف الدوال المدمجة في بايثون
1. دوال التعامل مع الأنواع (Type Conversion Functions)
تُستخدم لتحويل نوع البيانات من شكل إلى آخر، وتعد من أكثر الدوال استخدامًا.
| الدالة | الوظيفة |
|---|---|
int() |
تحويل القيمة إلى عدد صحيح |
float() |
تحويل القيمة إلى عدد عشري |
str() |
تحويل القيمة إلى سلسلة نصية |
bool() |
تحويل القيمة إلى نوع منطقي (True/False) |
list() |
تحويل كائن قابل للتكرار إلى قائمة |
tuple() |
تحويل كائن قابل للتكرار إلى مجموعة غير قابلة للتغيير |
set() |
تحويل كائن إلى مجموعة بدون تكرار |
dict() |
تحويل قائمة من الأزواج أو كائن آخر إلى قاموس |
مثال:
pythonx = "123"
print(int(x)) # 123
2. دوال الأرقام (Numeric Functions)
تتعامل هذه الدوال مع الأرقام وتوفر عمليات حسابية متعددة.
| الدالة | الوظيفة |
|---|---|
abs() |
إرجاع القيمة المطلقة لعدد |
round() |
تقريب الرقم إلى أقرب عدد صحيح أو عدد عشري بعدد معين من المنازل |
pow() |
رفع الرقم إلى قوة معينة |
divmod() |
إرجاع خارج القسمة والباقي في شكل زوج |
max() |
إرجاع أكبر قيمة من قائمة أو مجموعة من القيم |
min() |
إرجاع أصغر قيمة |
sum() |
جمع كل القيم في كائن قابل للتكرار |
مثال:
pythonprint(abs(-10)) # 10
print(pow(2, 3)) # 8
print(divmod(10, 3)) # (3, 1)
3. دوال النصوص والسلاسل (String Functions)
رغم أن معظم دوال السلاسل النصية تكون دوالًا تابعة لكائن str، إلا أن بعض الدوال المدمجة تسهل التعامل مع الحروف والنصوص.
| الدالة | الوظيفة |
|---|---|
ord() |
إرجاع الكود العددي Unicode لحرف معين |
chr() |
تحويل كود Unicode إلى الحرف المقابل |
len() |
إرجاع عدد العناصر في سلسلة نصية أو قائمة أو أي كائن آخر قابل للتكرار |
مثال:
pythonprint(ord('A')) # 65
print(chr(65)) # 'A'
print(len("Python")) # 6
4. دوال منطقية ومقارنة (Logical and Comparison Functions)
تستخدم هذه الدوال لاختبار القيم أو تقييم الحالات.
| الدالة | الوظيفة |
|---|---|
all() |
إرجاع True إذا كانت كل القيم صحيحة |
any() |
إرجاع True إذا كانت أي من القيم صحيحة |
isinstance() |
التحقق من ما إذا كان الكائن من نوع معين |
issubclass() |
التحقق من ما إذا كانت فئة فرعية من أخرى |
مثال:
pythonprint(all([True, True, False])) # False
print(any([False, False, True])) # True
print(isinstance(5, int)) # True
5. دوال التعامل مع المجموعات (Iterable Functions)
تساعد هذه الدوال في معالجة البيانات داخل الحلقات أو مجموعات القيم.
| الدالة | الوظيفة |
|---|---|
enumerate() |
إرجاع الكائن مع مؤشر التكرار |
zip() |
دمج مجموعتين أو أكثر في كائن واحد من الأزواج |
map() |
تطبيق دالة على كل عنصر في كائن قابل للتكرار |
filter() |
تصفية كائن بناء على دالة منطقية |
reversed() |
إرجاع نسخة معكوسة من الكائن |
sorted() |
إرجاع نسخة مرتبة من الكائن |
مثال:
pythonnames = ['Ali', 'Sara', 'Omar']
for i, name in enumerate(names):
print(i, name)
6. دوال الإدخال والإخراج (Input/Output Functions)
تُستخدم لقراءة البيانات من المستخدم أو طباعة المخرجات.
| الدالة | الوظيفة |
|---|---|
input() |
قراءة بيانات من المستخدم كسلسلة نصية |
print() |
طباعة المخرجات إلى الشاشة |
مثال:
pythonname = input("Enter your name: ")
print("Hello", name)
7. دوال أخرى متنوعة (Miscellaneous Functions)
| الدالة | الوظيفة |
|---|---|
id() |
إرجاع الهوية الفريدة للكائن |
type() |
إرجاع نوع الكائن |
help() |
عرض توثيق الدالة أو الكائن |
callable() |
التحقق مما إذا كان الكائن قابلًا للاستدعاء كدالة |
eval() |
تنفيذ تعبير نصي كسطر بايثون |
exec() |
تنفيذ مجموعة من التعليمات البرمجية |
globals() |
إرجاع قاموس المتغيرات العالمية |
locals() |
إرجاع قاموس المتغيرات المحلية |
مثال:
pythonx = 5
print(type(x)) #
print(id(x)) # رقم تعريفي فريد
جدول تلخيصي لأهم الدوال المدمجة في بايثون
| التصنيف | الدوال |
|---|---|
| التحويل بين الأنواع | int(), float(), str(), bool(), list(), tuple(), set(), dict() |
| الأرقام | abs(), round(), pow(), divmod(), max(), min(), sum() |
| النصوص | ord(), chr(), len() |
| منطقية | all(), any(), isinstance(), issubclass() |
| القوائم والمجموعات | enumerate(), zip(), map(), filter(), reversed(), sorted() |
| الإدخال والإخراج | input(), print() |
| أخرى | id(), type(), help(), eval(), exec(), globals(), locals() |
أهمية معرفة الدوال المدمجة في البرمجة باستخدام بايثون
امتلاك معرفة متعمقة بالدوال المدمجة في بايثون يوفر للمبرمجين قدرًا كبيرًا من الكفاءة، ويُحسن أداء البرامج ويقلل من الأخطاء البرمجية. من خلال هذه الدوال، يمكن تنفيذ الكثير من المهام الشائعة والمعقدة دون الحاجة إلى إعادة كتابة أكواد طويلة أو الاعتماد على مكتبات خارجية.
كما أن هذه الدوال هي أساس لبناء تعليمات برمجية أكثر وضوحًا واحترافية، وتسهم في تحسين جودة الكود (Code Quality)، وتسهل عملية الصيانة وتوسعة التطبيقات لاحقًا. وهي أيضًا مفيدة جدًا في سياقات التحليل البياني، والذكاء الاصطناعي، وتطوير الواجهات، مما يجعل إتقان استخدامها من الضروريات لأي مبرمج يعمل بلغة بايثون.
الخلاصة
تشكل الدوال المدمجة في بايثون مجموعة متكاملة من الأدوات الأساسية التي تمكّن المبرمج من تنفيذ العمليات المختلفة بطريقة مباشرة وبسيطة وفعالة. تضم اللغة أكثر من 70 دالة مدمجة يمكن استخدامها في معالجة الأرقام، النصوص، القوائم، البيانات المنطقية، وغيرها. المعرفة بهذه الدوال واستغلالها بالشكل الأمثل يمثل خطوة رئيسية نحو احتراف البرمجة بلغة بايثون.
المصادر:
-
Python Official Documentation: https://docs.python.org/3/library/functions.html
-
Real Python: https://realpython.com

